﻿using System.Collections.Generic;
using DiNinject.EfModel;

namespace DiNinject.Repository.Interfaces
{
    public interface IPersonRespository
    {
        /// <summary>
        /// Laden Aller Personen
        /// </summary>
        List<Person> AllPersons();

        /// <summary>
        /// Erstellen oder aktualisieren des übergebenen PersonenObjektes
        /// </summary>
        /// <param name="person">Das PersonenObjekt, welches aktualisiert bzw. angelegt werden soll</param>
        Person AddOrUpdatePerson(Person person);

        /// <summary>
        /// Laden der Person für die übergebene Id
        /// </summary>
        /// <param name="id">Id der Person die geladen werden soll</param>
        Person Load(int id);
    }
}